NLP

A Novel Bi-directional Interrelated Model for Joint Intent Detection and Slot Filling

本文研究的是联合意图识别和序列标注问题,在slot-gate基础上综合考虑ID->SF和SF->ID两方面的影响,同时提出了一种多重交互的机制来增强两个任务之间的联系,在ATIS和Snips公开数据集上取得了很好的效果。

paper: https://drive.google.com/open?id=13fCcaL87EMYgDq6R_mH5a56LqSQ2axgl
source: ACL 2019 short paper
code: https://github.com/ZephyrChenzf/SF-ID-Network-For-NLU

Introduction

目前大部分关于NLU的工作集中于将两个子任务Intent Detection和Slot Filling联合优化,早期的论文只是隐式的将损失函数相加,而Slot-gated modeling for joint slot filling and intent prediction提出了将ID的信息融合进SF的识别过程中,发现能够促进SF的效果。本文在此基础上,综合考虑了ID->SF和SF->ID两方面的影响,同时提出了一种多重交互的机制来不断增强两个任务之间的联系,在ATIS和Snips公开数据集上取得了很好的效果。

Models

Figure  1:  The  structure  of  the  proposed  model  based  on  SF-ID  network

在编码输入句子上,模型使用了类似的结构,首先使用Bi-LSTM编码,然后进行自注意力计算:
$$
c_{s l o t}^{i}=\sum_{j=1}^{T} \alpha_{i, j}^{S} h_{j}
$$
同样,使用最后时刻的隐层状态$h_{T}$计算自注意力得到$c_{inte}$。

SF-ID Network

SF-ID Network 由两个模块组成:SF, ID。根据这两个模块执行顺序的不同,SF-ID Network可以分为两种:

  • SF-First Mode
  • ID-First Mode

这两种仅是执行顺序不同,内在的运算类似。

SF-First Mode

SF subnet 首先通过意图信息$c_{inte}$和槽信息$c_{slot}^{i}$计算一个相关因子$f$:
$$
f=\sum V \ast \tanh \left(c_{\text {slot}}^{i}+W \ast c_{\text {inte}}\right)
$$
这里的操作借鉴自SlotGate模型。然后得到增强后的slot vector:$r_{\text {slot}}^{i}=f \cdot c_{\text {slot}}^{i}$。

ID subnet 将slot信息融合到意图识别任务中,作者认为混合的多粒度信息有助于ID:
$$
r=\sum_{i=1}^{T} \alpha_{i} \cdot r_{s l o t}^{i} \\
\alpha_{i}=\frac{\exp \left(e_{i, i}\right)}{\sum_{j=1}^{T} \exp \left(e_{i, j}\right)} \\
e_{i, j}=W \ast \tanh \left(V_{1} \ast r_{\text {slot}}^{i}+V_{2} \ast h_{j}+b\right)
$$
最终得到新的context vector: $r_{\text {inte}}=r+c_{\text {inte}}$。

Iteration Mechanism 反过来,$r_{\text {inte}}$也可以被输入到SF subnet中重新计算$f$:
$$
f=\sum V \ast \tanh \left(c_{s l o t}^{i}+W \ast r_{i n t e}\right)
$$
继而得到新的$r_{slot}^{i}$和$r_{inte}$,这个过程可以重复进行。作者在之后的实验中发现迭代3次能取得最好的效果。

迭代结束后,$r_{slot}^{i}$和$r_{inte}$被用来做最后的预测:
$$
y_{i n t e}=\operatorname{softmax}\left(W_{i n t e}^{h y} \operatorname{concat}\left(h_{T}, r_{i n t e}\right)\right) \\
y_{s l o t}^{i}=\operatorname{softmax}\left(W_{s l o t}^{h y} \operatorname{concat}\left(h_{i}, r_{s l o t}^{i}\right)\right)
$$
实际操作中作者还增加了CRF层辅助SF。

ID-First Mode

在ID-First Mode下,先进行ID subnet运算,再通过SF subnet。顺序改变会带来一些细节上的变化。

ID subnet

在计算$r_{inte}$的时候需要把$r_{slot}^{i}$替换成$c_{slot}^{i}$,其余操作不变。

Experiment

作者发现SF-first在ID任务上优于ID-first,而在SF任务上劣于ID-first。原因是SF-first把ID当作更重要的任务,融合SF的信息到ID中。

Conclusion

本文研究的是联合意图识别和序列标注问题,在slot-gate基础上综合考虑ID->SF和SF->ID两方面的影响,同时提出了一种多重交互的机制来增强两个任务之间的联系,在ATIS和Snips公开数据集上取得了很好的效果。